#include "ComponentDialog.h"
#include "ui_ComponentDialog.h"
#include <QPushButton>
#include <QVBoxLayout>
#include <QDebug>

ComponentDialog::ComponentDialog(QWidget *parent, const ComponentParam& param)
    : QDialog(parent), ui(new Ui::ComponentDialog), m_currentParam(param)
{
    ui->setupUi(this); // 初始化UI（空框架中UI文件可省略，仅用基础布局）

    // 【占位】简化布局：仅添加一个"保存"按钮
    QVBoxLayout* layout = new QVBoxLayout(this);
    QPushButton* saveBtn = new QPushButton("保存参数", this);
    layout->addWidget(saveBtn);
    setLayout(layout);

    // 连接保存按钮信号（空实现：点击后仅打印日志并发射信号）
    connect(saveBtn, &QPushButton::clicked, this, &ComponentDialog::onSaveClicked);

    qDebug() << "ComponentDialog 空框架初始化";
}

ComponentDialog::~ComponentDialog()
{
    delete ui;
    qDebug() << "ComponentDialog 销毁（空框架）";
}

void ComponentDialog::onSaveClicked()
{
    // 【占位】无实际参数读取逻辑，直接使用初始参数发射信号
    qDebug() << "模拟保存参数（空框架，无实际处理）";
    emit paramSaved(m_currentParam); // 发射保存信号
    close(); // 关闭对话框
}
